package validators;

import javax.faces.application.FacesMessage;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.validator.FacesValidator;
import javax.faces.validator.Validator;
import javax.faces.validator.ValidatorException;

@FacesValidator("UserAgeValidator")
public class UserAgeValidator implements Validator{

	@Override
	public void validate(FacesContext arg0, UIComponent arg1, Object arg2)
			throws ValidatorException {
		if(arg2 == null){
			throw new ValidatorException(new FacesMessage(FacesMessage.SEVERITY_WARN,"Ce champ est obligatoire","Ce champ est obligatoire"));
		}
		try{
			Integer age = Integer.parseInt(arg2.toString());
			if(age<1 || age>100){
				throw new ValidatorException(new FacesMessage(FacesMessage.SEVERITY_WARN,"L'âge doit être compris entre 1 et 100 ans","L'âge doit être compris entre 1 et 100 ans"));
			}
		}catch(NumberFormatException e){
			throw new ValidatorException(new FacesMessage(FacesMessage.SEVERITY_WARN,"L'âge doit être un entier","L'âge doit être un entier"));
		}
		
	}

}
